home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / sstein.z / sstein
Text File  |  1996-03-14  |  5KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSSSSSTTTTEEEEIIIINNNN((((3333FFFF))))                                                          SSSSSSSSTTTTEEEEIIIINNNN((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SSTEIN - compute the eigenvectors of a real symmetric tridiagonal matrix
  10.      T corresponding to specified eigenvalues, using inverse iteration
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE SSTEIN( N, D, E, M, W, IBLOCK, ISPLIT, Z, LDZ, WORK, IWORK,
  14.                         IFAIL, INFO )
  15.  
  16.          INTEGER        INFO, LDZ, M, N
  17.  
  18.          INTEGER        IBLOCK( * ), IFAIL( * ), ISPLIT( * ), IWORK( * )
  19.  
  20.          REAL           D( * ), E( * ), W( * ), WORK( * ), Z( LDZ, * )
  21.  
  22. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  23.      SSTEIN computes the eigenvectors of a real symmetric tridiagonal matrix T
  24.      corresponding to specified eigenvalues, using inverse iteration.
  25.  
  26.      The maximum number of iterations allowed for each eigenvector is
  27.      specified by an internal parameter MAXITS (currently set to 5).
  28.  
  29.  
  30. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  31.      N       (input) INTEGER
  32.              The order of the matrix.  N >= 0.
  33.  
  34.      D       (input) REAL array, dimension (N)
  35.              The n diagonal elements of the tridiagonal matrix T.
  36.  
  37.      E       (input) REAL array, dimension (N)
  38.              The (n-1) subdiagonal elements of the tridiagonal matrix T, in
  39.              elements 1 to N-1.  E(N) need not be set.
  40.  
  41.      M       (input) INTEGER
  42.              The number of eigenvectors to be found.  0 <= M <= N.
  43.  
  44.      W       (input) REAL array, dimension (N)
  45.              The first M elements of W contain the eigenvalues for which
  46.              eigenvectors are to be computed.  The eigenvalues should be
  47.              grouped by split-off block and ordered from smallest to largest
  48.              within the block.  ( The output array W from SSTEBZ with ORDER =
  49.              'B' is expected here. )
  50.  
  51.      IBLOCK  (input) INTEGER array, dimension (N)
  52.              The submatrix indices associated with the corresponding
  53.              eigenvalues in W; IBLOCK(i)=1 if eigenvalue W(i) belongs to the
  54.              first submatrix from the top, =2 if W(i) belongs to the second
  55.              submatrix, etc.  ( The output array IBLOCK from SSTEBZ is
  56.              expected here. )
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSSSSSTTTTEEEEIIIINNNN((((3333FFFF))))                                                          SSSSSSSSTTTTEEEEIIIINNNN((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      ISPLIT  (input) INTEGER array, dimension (N)
  75.              The splitting points, at which T breaks up into submatrices.  The
  76.              first submatrix consists of rows/columns 1 to ISPLIT( 1 ), the
  77.              second of rows/columns ISPLIT( 1 )+1 through ISPLIT( 2 ), etc.  (
  78.              The output array ISPLIT from SSTEBZ is expected here. )
  79.  
  80.      Z       (output) REAL array, dimension (LDZ, M)
  81.              The computed eigenvectors.  The eigenvector associated with the
  82.              eigenvalue W(i) is stored in the i-th column of Z.  Any vector
  83.              which fails to converge is set to its current iterate after
  84.              MAXITS iterations.
  85.  
  86.      LDZ     (input) INTEGER
  87.              The leading dimension of the array Z.  LDZ >= max(1,N).
  88.  
  89.      WORK    (workspace) REAL array, dimension (5*N)
  90.  
  91.      IWORK   (workspace) INTEGER array, dimension (N)
  92.  
  93.      IFAIL   (output) INTEGER array, dimension (M)
  94.              On normal exit, all elements of IFAIL are zero.  If one or more
  95.              eigenvectors fail to converge after MAXITS iterations, then their
  96.              indices are stored in array IFAIL.
  97.  
  98.      INFO    (output) INTEGER
  99.              = 0: successful exit.
  100.              < 0: if INFO = -i, the i-th argument had an illegal value
  101.              > 0: if INFO = i, then i eigenvectors failed to converge in
  102.              MAXITS iterations.  Their indices are stored in array IFAIL.
  103.  
  104. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  105.      MAXITS  INTEGER, default = 5
  106.              The maximum number of iterations performed.
  107.  
  108.      EXTRA   INTEGER, default = 2
  109.              The number of iterations performed after norm growth criterion is
  110.              satisfied, should be at least 1.
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.